/**
 * 
 */
package com.xb.cloud.product.merchant.service.client.bo;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.ArrayList;
import java.util.List;


/**
 *  @author kexue
 *  product的数据模板
 */
public class ProductTemplateBo implements Serializable {

	/**
	 * 
	 */
	private static final long serialVersionUID = 1L;
	
	//1. 基础字段
	private Long id;

    private Long companyId;

    private Long merchantId;

    private Long brandId;

    private Long categoryId;

    private Byte productType;

    private Byte productSaleType;

    private Integer deliveryType;

    private String productNameCn;

    private String productTitleSub;

    private BigDecimal priceMarket;

    private BigDecimal priceIn;

    private BigDecimal priceSale;

    private String ean13;

    private String productBarcode;

    private BigDecimal length;

    private BigDecimal width;

    private BigDecimal height;

    private BigDecimal volume;

    private BigDecimal weightNet;

    private BigDecimal weightGross;

    private String productUnit;

    private Integer packNum;

    private Byte isSaleWholeCountry;

    private Byte isMustInvoice;

    private Byte isVati;

    private Byte isStockUnlimited;

    private Integer productQualityDay;

    private Integer productVersion;

    private Byte isMerchantArea;
	
	//2. 基本属性
    private List<ProductAttributeMongoBo> baseAttrs = new ArrayList<ProductAttributeMongoBo>();
	
	//3. 系列属性 
  	private List<ProductAttributeMongoBo> seriesAttrs = new ArrayList<ProductAttributeMongoBo>();
  	
	// 4 .当前productId对应的系列属性组合（seriesAttributeCombProductIdMap）的key; 例如， 1:1_2:1 -> productId1 . 给前端自动选中组合的时候使用
  	private String seriesAttributeCombProductId;

    //5. product: 图片
  	private List<ProductPicBo> productPicBoList; 
  	
  	//6. product: 文本描述
  	private String  productDetailContent; 
  	
	public Long getId() {
		return id;
	}

	public void setId(Long id) {
		this.id = id;
	}

	public Long getCompanyId() {
		return companyId;
	}

	public void setCompanyId(Long companyId) {
		this.companyId = companyId;
	}

	public Long getMerchantId() {
		return merchantId;
	}

	public void setMerchantId(Long merchantId) {
		this.merchantId = merchantId;
	}

	public Long getBrandId() {
		return brandId;
	}

	public void setBrandId(Long brandId) {
		this.brandId = brandId;
	}

	public Long getCategoryId() {
		return categoryId;
	}

	public void setCategoryId(Long categoryId) {
		this.categoryId = categoryId;
	}

	public Byte getProductType() {
		return productType;
	}

	public void setProductType(Byte productType) {
		this.productType = productType;
	}

	public Byte getProductSaleType() {
		return productSaleType;
	}

	public void setProductSaleType(Byte productSaleType) {
		this.productSaleType = productSaleType;
	}

	public Integer getDeliveryType() {
		return deliveryType;
	}

	public void setDeliveryType(Integer deliveryType) {
		this.deliveryType = deliveryType;
	}

	public String getProductNameCn() {
		return productNameCn;
	}

	public void setProductNameCn(String productNameCn) {
		this.productNameCn = productNameCn;
	}

	public String getProductTitleSub() {
		return productTitleSub;
	}

	public void setProductTitleSub(String productTitleSub) {
		this.productTitleSub = productTitleSub;
	}

	public BigDecimal getPriceMarket() {
		return priceMarket;
	}

	public void setPriceMarket(BigDecimal priceMarket) {
		this.priceMarket = priceMarket;
	}

	public BigDecimal getPriceIn() {
		return priceIn;
	}

	public void setPriceIn(BigDecimal priceIn) {
		this.priceIn = priceIn;
	}

	public BigDecimal getPriceSale() {
		return priceSale;
	}

	public void setPriceSale(BigDecimal priceSale) {
		this.priceSale = priceSale;
	}

	public String getEan13() {
		return ean13;
	}

	public void setEan13(String ean13) {
		this.ean13 = ean13;
	}

	public String getProductBarcode() {
		return productBarcode;
	}

	public void setProductBarcode(String productBarcode) {
		this.productBarcode = productBarcode;
	}

	public BigDecimal getLength() {
		return length;
	}

	public void setLength(BigDecimal length) {
		this.length = length;
	}

	public BigDecimal getWidth() {
		return width;
	}

	public void setWidth(BigDecimal width) {
		this.width = width;
	}

	public BigDecimal getHeight() {
		return height;
	}

	public void setHeight(BigDecimal height) {
		this.height = height;
	}

	public BigDecimal getVolume() {
		return volume;
	}

	public void setVolume(BigDecimal volume) {
		this.volume = volume;
	}

	public BigDecimal getWeightNet() {
		return weightNet;
	}

	public void setWeightNet(BigDecimal weightNet) {
		this.weightNet = weightNet;
	}

	public BigDecimal getWeightGross() {
		return weightGross;
	}

	public void setWeightGross(BigDecimal weightGross) {
		this.weightGross = weightGross;
	}

	public String getProductUnit() {
		return productUnit;
	}

	public void setProductUnit(String productUnit) {
		this.productUnit = productUnit;
	}

	public Integer getPackNum() {
		return packNum;
	}

	public void setPackNum(Integer packNum) {
		this.packNum = packNum;
	}

	public Byte getIsSaleWholeCountry() {
		return isSaleWholeCountry;
	}

	public void setIsSaleWholeCountry(Byte isSaleWholeCountry) {
		this.isSaleWholeCountry = isSaleWholeCountry;
	}

	public Byte getIsMustInvoice() {
		return isMustInvoice;
	}

	public void setIsMustInvoice(Byte isMustInvoice) {
		this.isMustInvoice = isMustInvoice;
	}

	public Byte getIsVati() {
		return isVati;
	}

	public void setIsVati(Byte isVati) {
		this.isVati = isVati;
	}

	public Byte getIsStockUnlimited() {
		return isStockUnlimited;
	}

	public void setIsStockUnlimited(Byte isStockUnlimited) {
		this.isStockUnlimited = isStockUnlimited;
	}

	public Integer getProductQualityDay() {
		return productQualityDay;
	}

	public void setProductQualityDay(Integer productQualityDay) {
		this.productQualityDay = productQualityDay;
	}

	public Integer getProductVersion() {
		return productVersion;
	}

	public void setProductVersion(Integer productVersion) {
		this.productVersion = productVersion;
	}

	public Byte getIsMerchantArea() {
		return isMerchantArea;
	}

	public void setIsMerchantArea(Byte isMerchantArea) {
		this.isMerchantArea = isMerchantArea;
	}

	public List<ProductAttributeMongoBo> getBaseAttrs() {
		return baseAttrs;
	}

	public void setBaseAttrs(List<ProductAttributeMongoBo> baseAttrs) {
		this.baseAttrs = baseAttrs;
	}

	public List<ProductAttributeMongoBo> getSeriesAttrs() {
		return seriesAttrs;
	}

	public void setSeriesAttrs(List<ProductAttributeMongoBo> seriesAttrs) {
		this.seriesAttrs = seriesAttrs;
	}

	public String getSeriesAttributeCombProductId() {
		return seriesAttributeCombProductId;
	}

	public void setSeriesAttributeCombProductId(String seriesAttributeCombProductId) {
		this.seriesAttributeCombProductId = seriesAttributeCombProductId;
	}

	public List<ProductPicBo> getProductPicBoList() {
		return productPicBoList;
	}

	public void setProductPicBoList(List<ProductPicBo> productPicBoList) {
		this.productPicBoList = productPicBoList;
	}

	public String getProductDetailContent() {
		return productDetailContent;
	}

	public void setProductDetailContent(String productDetailContent) {
		this.productDetailContent = productDetailContent;
	}
  	
}
